﻿#define _CRT_SECURE_NO_WARNINGS 1
//用联合体判断大小端
//#include <stdio.h>
//int check()
//{
//	union un
//	{
//		int n;
//		char c;
//	}u;
//	u.n = 1;
//	return u.c;
//}
//int main()
//{
//	int ret = check();
//	if (ret == 1)
//		printf("小端");
//	else
//		printf("大端");
//	return 0;
//}

//#include <stdio.h>
//int main()
//{
//    int i,j = 0;
//    for ( i = 10000; i <=99999; i++)
//    {
//        int sum = 0;
//       ;
//        for (j = 10; j <= 10000; j *= 10)
//        {
//            sum += (i / j)* (i % j);
//        }
//        if (sum == i)
//        {
//            printf("%d ", i);
//        }
//    }
//  
//    return 0;
//}

//#include <stdio.h>
//int main()
//{
//    int arr[50] ;
//    int arr1[50] ;
//    int b = 0;
//    int a = 0;
//    int d = 0;
//    scanf("%d", &a);
//    for (int i = 0; i < a; i++)
//    {
//        scanf("%d ", &arr[i] );
//    }
//    scanf("%d", &b);
//    for (int j = 0; j < a; j++)
//    {
//        if (arr[j] != b)
//        {
//            arr1[d] = arr[j];
//            d++;
//        }
//    }
//    for (int c = 0; c < a-1; c++)
//    {
//        printf("%d ", arr1[c]);
//    }
//    return 0;
//}

//#include <stdio.h>
//int main()
//{
//    int i, j;
//    int n;
//    int arr_1[100];
//    int arr_2[100];
//    int del;
//    scanf("%d", &n);
//    for (i = 0; i < n; i++)
//    {
//        scanf("%d", &arr_1[i]);
//    }
//    scanf("%d", &del);
//    for (i = 0, j = 0; i < n; i++)
//    {
//
//        if (del != arr_1[i])
//        {
//            arr_2[j] = arr_1[i];
//            j++;
//        }
//    }
//    for (i = 0; i < j; i++)
//    {
//        printf("%d ", arr_2[i]);
//    }
//    return 0;
//}


//#include <stdio.h>
//struct stu
//{
//	char name[20];
//	int age;
//} p1;
//int main()
//{
//	p1 = { "张三",15 };
//	printf("%s %d", p1.name, p1.age);
//	return 0;
//}

//#include <stdio.h>
//struct stu
//{
//	char name[20];
//	int age;
//	char sex[5];
//} p1;
//int main()
//{
//	//按照结构体成员的顺序初始化
//	struct stu p1 = { "张三",18,"女" };  
//	printf("%s %d  %s\n", p1.name, p1.age, p1.sex);
//	//按照指定的顺序初始化 
//	struct stu p2 = { .age = 11,.sex = "男",.name = "李四" };
//	printf("%d   %s  %s\n", p2.age, p2.sex, p2.name);
//
//	return 0;
//}



//#include <stdio.h>
//struct Stu
//{
//	char name[20];//名字 
//	int age;//年龄 
//	char sex[5];//性别 
//	char id[20];//学号 
//};
//int main()
//{
//	//按照结构体成员的顺序初始化 
//	struct Stu s = { "张三", 20, "男", "20230818001" };
//	printf("name: %s\n", s.name);
//	printf("age : %d\n", s.age);
//	printf("sex : %s\n", s.sex);
//	printf("id : %s\n", s.id);
//
//	//按照指定的顺序初始化 
//	struct Stu s2 = { .age = 18, .name = "lisi", .id = "20230818002", .sex =
//   "⼥" };
//	printf("name: %s\n", s2.name);
//	printf("age : %d\n", s2.age);
//	printf("sex : %s\n", s2.sex);
//	printf("id : %s\n", s2.id);
//	return 0;
//}

//#include <stdio.h>
//struct Point
//{
//	int m;
//	int n;
//}p = { .n = 21,.m = 11 };
//int main()
//{
//	printf("m: %d n: %d\n", p.m, p.n);
//	return 0;
//}


//#include <stdio.h>
//#include <string.h>
//struct Book
//{
//	int price;
//	char name[10];
//} *ptr;
//int main()
//{
//	struct Book s1 = { 22,"西游记" };
//	ptr = &s1;
//	strcmp(ptr->name,"红楼梦");
//	ptr->price = 24;
//	printf("价格: %d  书名: %s\n", ptr->price, ptr->name);
//	return 0;
//}

//#include <stdio.h>
//#include <string.h>
//struct Stu
//{
//	char name[15];//名字 
//	int age; //年龄 
//};
//
//void set_stu(struct Stu* ps)  //结构体传参用一个结构体指针接收
//{
//	strcpy(ps->name, "李四");
//	ps->age = 25;
//	printf("%s %d\n", ps->name, ps->age);
//}
//
//int main()
//{
//	struct Stu s = { "张三", 20 };
//	set_stu(&s);  //将结构体的地址传给函数
//	return 0;
//}
// 
// 
//#include <stdio.h>
//struct S
//{
//	int a;
//	int b;
//};
//
//int main()
//{
//	struct S p[3] = { {11,32},{21,13},{27,15} };
//	for (int i = 0; i < 3; i++)
//	{
//		printf("%d  %d\n", p[i].a, p[i].b);
//	}
//	return 0;
//}


struct Node
{
	int data;
	struct Node* next;
};
